/*
 * API前缀处理：根据模块名称返回API前缀
 *
 * @param module 模块名称，如 user, course 等
 * @return 对应的API前缀，如 /user-server/api/v1/user 等，末尾无 / 符号
 * */
export function apiPrefixFormat(module) {
    const USER_MODULES = ['menu', 'role', 'user'];
    const COURSE_MODULES = ['category', 'comment', 'course', 'episode', 'report', 'season'];
    const SALE_MODULES = ['article', 'banner', 'coupons', 'notice', 'seckill', 'seckillDetail'];
    const ORDER_MODULES = ['cart', 'order', 'orderDetail'];
    let microServiceName = '';
    if (USER_MODULES.indexOf(module) !== -1) {
        microServiceName = `/user-server`;
    } else if (COURSE_MODULES.indexOf(module) !== -1) {
        microServiceName = `/course-server`;
    } else if (SALE_MODULES.indexOf(module) !== -1) {
        microServiceName = `/sale-server`;
    } else if (ORDER_MODULES.indexOf(module) !== -1) {
        microServiceName = `/order-server`;
    }
    return `${microServiceName}/api/v1/${module}`;
}

/*
 * 性别代码处理：0->'女'，1->'男'，2->'保密'
 *
 * @param genderCode 性别代码
 * @return 对应的性别字符串，0女孩，1男孩，2保密
 * */
export function genderFormat(genderCode) {
    if (genderCode === '0' || genderCode === 0) return '女孩';
    if (genderCode === '1' || genderCode === 1) return '男孩';
    if (genderCode === '2' || genderCode === 2) return '保密';
    return '性别代码异常';
}

/*
 * 秒杀活动状态代码处理：0->'未开始'，1->'已开始'，2->'已结束'
 *
 * @param status 秒杀活动状态代码
 * @return 对应的秒杀活动状态字符串，0未开始，1已开始，2已结束
 * */
export function seckillStatusFormat(status) {
    if (status === '0' || status === 0) return '未开始';
    if (status === '1' || status === 1) return '已开始';
    if (status === '2' || status === 2) return '已结束';
    return '秒杀活动状态代码异常';
}

/*
 * 根据订单状态代码，返回对应的字符串文案
 *
 * @param stateCode 订单状态代码
 * @return 对应的字符串文案，0未付款，1已付款
 * */
export function orderStateFormat(stateCode) {
    if (stateCode === '0' || stateCode === 0) return '未付款';
    if (stateCode === '1' || stateCode === 1) return '已付款';
    if (stateCode === '2' || stateCode === 2) return '已取消';
    if (stateCode === '3' || stateCode === 3) return '其他';
    return '订单状态代码异常';
}

/*
 * 根据订单支付方式代码，返回对应的字符串文案
 *
 * @param typeCode 订单支付方式代码
 * @return 对应的字符串文案，0未支付，1支付宝，2微信，3其他
 * */
export function orderPayTypeFormat(typeCode) {
    if (typeCode === '0' || typeCode === 0) return '未支付';
    if (typeCode === '1' || typeCode === 1) return '微信';
    if (typeCode === '2' || typeCode === 2) return '支付宝';
    if (typeCode === '3' || typeCode === 3) return '银行卡';
    if (typeCode === '4' || typeCode === 4) return '其他';
    return '订单支付方式代码异常';
}